﻿using System;

namespace SocialApi.Core.Request
{
    /// <summary>
    /// Методы для выполнения синхронного POST запроса на сервер
    /// </summary>
    public interface IPost
    {
        /// <summary>
        /// Выполняет синхронный POST запрос на сервер
        /// </summary>
        /// <param name="url">URL сервера</param>
        /// <param name="data">Параметры запроса</param>
        string Post(Uri url, object data);

        /// <summary>
        /// Выполняет синхронный POST запрос на сервер
        /// </summary>
        /// <param name="url">URL сервера</param>
        /// <param name="data">Параметры запроса</param>
        string Post(Uri url, string data);

        /// <summary>
        /// Выполняет синхронный POST запрос на сервер
        /// </summary>
        /// <param name="url">URL сервера</param>
        string Post(Uri url);

        /// <summary>
        /// Выполняет синхронный POST запрос на сервер
        /// </summary>
        /// <param name="url">URL сервера</param>
        /// <param name="data">Параметры запроса</param>
        string Post(string url, object data);

        /// <summary>
        /// Выполняет синхронный POST запрос на сервер
        /// </summary>
        /// <param name="url">URL сервера</param>
        /// <param name="data">Параметры запроса</param>
        string Post(string url, string data);

        /// <summary>
        /// Выполняет синхронный POST запрос на сервер
        /// </summary>
        /// <param name="url">URL сервера</param>
        string Post(string url);
    }
}